package com.tedu.controller;

import com.tedu.services.UserServices;
import com.tedu.services.UserServicesImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * 用户模块的控制器
 * 模拟用户的登录与注册
 * 高内聚 低耦合
 */

@Controller   //声明处理器 处理用户的请求
public class UserController {

    //声明并实例化 服务层接口 (但这种耦合度较高，要降低组件间的耦合)
   // UserServices userServices  = new UserServicesImpl();  //优化：将组件交给spring管理

    @Autowired  //从spring容器中去除一个对象赋值给userServices
    UserServices userServices;

    @RequestMapping("/login")
    public String login(String username, String password, Model model){

        System.out.println(username+"你好，你正在进行登录操作~");
        //登录成功  登录失败
        if (username!=null && username.equals("admin") && password!=null && password.equals("admin")){
            //登录成功
            model.addAttribute("msg","恭喜"+username+"登录成功");
        }else {
            //登录失败
            model.addAttribute("msg","很遗憾，"+username+"登录失败");
        }
        return "main";  // WEB-INF/jsp/.jsp 进行视图解析：前缀+后缀
    }

    /**
     * 显示用户注册页面
     * @return
     */
    @RequestMapping("/toregister")
    public String toRegister(){
        return "register";
    }


    /**
     * 处理用户注册的方法
     * @return
     */
    @RequestMapping("/register")
    public String register(String username, String password){

        //用户名+密码的信息  之后调用服务层方法进行注册
        userServices.regster(username, password);


        return "redirect:/index.jsp";   // 转发到index.jsp页面 不能直接用index，因为前缀是// WEB-INF/jsp/.jsp 找不到这个页面 404

    }
}
